#!/usr/bin/env node

/**
 * 通过API调用初始化admin账号
 */

const config = require('../config/config.js');

async function initAdminViaAPI() {
    try {
        console.log('=== 通过API初始化Admin账号 ===');
        
        console.log('配置信息:');
        console.log('- Admin Name:', config.ADMIN_NAME);
        console.log('- Admin Password:', config.ADMIN_PWD);
        
        console.log('\n=== 解决方案 ===');
        console.log('1. 在小程序中调用云函数 admin/init 接口');
        console.log('2. 或者在云函数控制台直接执行初始化');
        console.log('3. 确保数据库中有 ADMIN_STATUS=1 的admin记录');
        
        console.log('\n=== API调用方式 ===');
        console.log('在小程序中调用:');
        console.log('wx.cloud.callFunction({');
        console.log('  name: "cloud",');
        console.log('  data: {');
        console.log('    action: "admin/init"');
        console.log('  }');
        console.log('})');
        
        console.log('\n=== 手动数据库操作 ===');
        console.log('如果API调用失败，可以手动在数据库中执行:');
        console.log('1. 查找 ax_admin 集合');
        console.log('2. 确保有 ADMIN_NAME="admin" 的记录');
        console.log('3. 确保 ADMIN_STATUS=1');
        console.log('4. 如果没有记录，创建一条新记录');
        
        return {
            success: true,
            message: '请按照上述方案解决admin登录问题'
        };
        
    } catch (error) {
        console.error('❌ 检查失败:', error);
        return {
            success: false,
            message: '检查失败: ' + error.message
        };
    }
}

// 如果直接运行此脚本
if (require.main === module) {
    initAdminViaAPI().then(result => {
        console.log('结果:', result);
        process.exit(result.success ? 0 : 1);
    }).catch(error => {
        console.error('脚本执行失败:', error);
        process.exit(1);
    });
}

module.exports = { initAdminViaAPI };
